package com.asset.salesforce.form;

import javax.validation.constraints.Pattern;

import org.hibernate.validator.constraints.NotEmpty;

import com.asset.salesforce.domain.Employee;
import com.asset.salesforce.domain.StockCategory;
import com.asset.salesforce.domain.StockProduct;
import com.asset.salesforce.domain.StockSubCategory;
import com.asset.salesforce.validator.CategoryCodeNotExist;
import com.asset.salesforce.validator.CategoryNameNotExist;
import com.asset.salesforce.validator.QuantityChecker;
//@QuantityChecker
@CategoryCodeNotExist
@CategoryNameNotExist
public class StockCategoryForm {

	private Integer number;
	private String info;
	@NotEmpty(message="Please,Enter the name")
	//@Pattern(regexp="^$|[a-zA-Z\\s]*$",message="Please Enter the name in string")
	private String name;
	@NotEmpty(message="Please,Enter the description")
	private String description;
	private String feedback;
	private String comment;
	private Boolean flag;
	
	private String quantity;
	private String price;
	private String sale;
	private StockCategory stockCategory;
	private StockSubCategory stockSubCategory;
	private StockProduct stockProduct;	
	private Employee owner;
	private Boolean isDeleted;
	@NotEmpty(message="Please enter code.")
	@Pattern(regexp="^$|^[0-9]*$",message="Please Enter the code in Number Format")
	private String code;
	private String percentage;
	private String value;

	private Integer empId;
	private Integer parentId;
	public Employee getOwner() {
		return owner;
	}
	public void setOwner(Employee owner) {
		this.owner = owner;
	}
	
	public Boolean getIsDeleted() {
		return isDeleted;
	}
	public void setIsDeleted(Boolean isDeleted) {
		this.isDeleted = isDeleted;
	}

	public String getCode() {
		return code;
	}
	public void setCode(String code) {
		this.code = code;
	}
	

	/**
	 * @return the number
	 */
	public Integer getNumber() {
		return number;
	}

	/**
	 * @param number
	 *            the number to set
	 */
	public void setNumber(Integer number) {
		this.number = number;
	}

	/**
	 * @return the info
	 */
	public String getInfo() {
		return info;
	}

	/**
	 * @param info
	 *            the info to set
	 */
	public void setInfo(String info) {
		this.info = info;
	}

	/**
	 * @return the name
	 */
	public String getName() {
		return name;
	}

	/**
	 * @param name
	 *            the name to set
	 */
	public void setName(String name) {
		this.name = name;
	}

	/**
	 * @return the description
	 */
	public String getDescription() {
		return description;
	}

	/**
	 * @param description
	 *            the description to set
	 */
	public void setDescription(String description) {
		this.description = description;
	}

	/**
	 * @return the feedback
	 */
	public String getFeedback() {
		return feedback;
	}

	/**
	 * @param feedback
	 *            the feedback to set
	 */
	public void setFeedback(String feedback) {
		this.feedback = feedback;
	}

	/**
	 * @return the comment
	 */
	public String getComment() {
		return comment;
	}

	/**
	 * @param comment
	 *            the comment to set
	 */
	public void setComment(String comment) {
		this.comment = comment;
	}

	/**
	 * @return the flag
	 */
	public Boolean getFlag() {
		return flag;
	}

	/**
	 * @param flag
	 *            the flag to set
	 */
	public void setFlag(Boolean flag) {
		this.flag = flag;
	}

	public String getQuantity() {
		return quantity;
	}

	public void setQuantity(String quantity) {
		this.quantity = quantity;
	}

	public String getPrice() {
		return price;
	}

	public void setPrice(String price) {
		this.price = price;
	}

	public String getSale() {
		return sale;
	}

	public void setSale(String sale) {
		this.sale = sale;
	}

	public StockCategory getStockCategory() {
		return stockCategory;
	}

	public void setStockCategory(StockCategory stockCategory) {
		this.stockCategory = stockCategory;
	}

	public StockSubCategory getStockSubCategory() {
		return stockSubCategory;
	}

	public void setStockSubCategory(StockSubCategory stockSubCategory) {
		this.stockSubCategory = stockSubCategory;
	}

	public StockProduct getStockProduct() {
		return stockProduct;
	}

	public void setStockProduct(StockProduct stockProduct) {
		this.stockProduct = stockProduct;
	}
	public String getPercentage() {
		return percentage;
	}
	public void setPercentage(String percentage) {
		this.percentage = percentage;
	}
	public String getValue() {
		return value;
	}
	public void setValue(String value) {
		this.value = value;
	}
	/**
	 * @return the empId
	 */
	public Integer getEmpId() {
		return empId;
	}
	/**
	 * @param empId the empId to set
	 */
	public void setEmpId(Integer empId) {
		this.empId = empId;
	}
	/**
	 * @return the productId
	 */
	public Integer getParentId() {
		return parentId;
	}
	/**
	 * @param productId the productId to set
	 */
	public void setParentId(Integer parentId) {
		this.parentId = parentId;
	}

}
